package com.sc.nft.controller.request;

import com.sc.nft.enums.MallOrderRefundTypeEnum;
import com.sc.nft.enums.RefundReasonEnum;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.hibernate.validator.constraints.Range;

import javax.validation.constraints.NotNull;

@Data
public class ConfirmRefundRequest {

    @ApiModelProperty(value = "订单id")
    @NotNull(message = "订单id不能为空")
    private Long id;

    @ApiModelProperty(value = "订单商品id")
    @NotNull(message = "订单商品id不能为空")
    private Long orderProductId;

    @ApiModelProperty(value = "退款数量")
    @Range(min = 1, max = 99999, message = "退款数量取值范围不正确")
    private Integer count;

    @ApiModelProperty(value = "退款原因")
    @NotNull(message = "退款原因不能为空")
    private RefundReasonEnum refundReason;

    /**
     * 申请描述
     */
    @ApiModelProperty(value = "申请描述")
    private String description;

    @ApiModelProperty(value = "退款类型 ONLY_REFUND:仅退款")
    @NotNull(message = "退款类型不能为空")
    private MallOrderRefundTypeEnum refundType;

    @ApiModelProperty(value = "退款图片 格式: xxx.jpg,xxx.jpg")
    private String imgUrl;

    @ApiModelProperty(value = "联系号码")
    @NotNull(message = "联系号码不能为空")
    private String contactNumber;
}
